1. Field of the Invention
The present invention relates to an image processing technique, and more particularly, to a technique for adjusting an image displayed on a display device.
2. Description of the Related Art
When moving image data, for which data compression according to an MPEG (Moving Picture Experts Group) format is performed, is decoded and displayed on a flat panel such as an LCD (Liquid Crystal Display) panel, a PDP (Plasma Display Panel), etc., a phenomenon that a display image becomes too dark or too bright sometimes occurs. This is because the color reproduction range of the panel is not sufficient. To prevent such a phenomenon, data representing the luminance gradation level of each of RGB colors (hereinafter referred to as gradation level data), which are the primary colors of light emission of the flat panel, is sometimes corrected.
Additionally, the light emission characteristics of RGB colors are not uniform on such a flat panel in some cases. For example, even if RGB colors are set as data having the same value, a proper white or gray color is not displayed and tinted blue or red in some cases. To prevent such a phenomenon, for example, as indicated by a graph in FIG. 1, γ (gamma) correction for gradation level data is sometimes made for respective RGB colors.
As one of such techniques for correcting gradation level data, a conversion process for gradation level data by using a lookup table is known. With this technique, a table of gradation level data after being converted, which is made to correspond uniquely to gradation level data before being converted, is stored in a memory such as ROM, RAM, etc., and conversion results of gradation level data are obtained by referencing this table. Here, a technique for making a correspondence between gradation level data before being converted and gradation level data after being converted by using a relationship between an address and a storage area in a memory is widely known.
As the conversion technique for image data by using a lookup table, for example, Japanese Patent Publication No. 2004-38693 discloses a technique for performing an interpolation operation by using lattice point data, which is represented as coordinates of three-dimensional space and read from a lookup table, and coefficient data calculated from γ correction data, according to the γ correction data read in accordance with input data, and for obtaining color conversion data.
Additionally, for example, Japanese Patent Publication No. HEI6-348829 discloses a technique for converting color image data in YUV or YIQ format into image data in RGB format by using a lookup table.
Furthermore, for example, Japanese Patent Publication No. 2002-152545 discloses a technique for expanding input image information into bitmap image data, and for outputting the image data by using a color processing condition corresponding to each type of an image outputting device. This technique discloses that γ correction is made by using a lookup table.
In the meantime, with the above described image display on a flat panel, a correction process for gradation level data according to a moving image to be displayed is performed in some cases. Examples of such a correction process include a correction process for enlarging the gradation level of a black level if the number of relatively dark scenes is large, or for enlarging the gradation level of a white level if the number of relatively bright scenes is large.
Besides, it is sometimes desired that a user can freely change a correction amount to some extent without fixing the correction amount also in the above described γ correction.
In an image processing apparatus for correcting gradation level data by using a lookup table, such a change in a correction amount can be made by altering the contents of the lookup table. However, abortion of an image display is not generally permitted when the correction amount is changed for the above described purpose.
Here, FIG. 2 is explained. This figure shows one example of a configuration of a color adjusting unit in a conventional image processing apparatus. This color adjusting unit is intended to correct gradation level data of respective colors of an input video signal in RGB format by using a lookup table, and to output the data, and is configured to change the contents of the lookup table without aborting the output of the video signal.
In FIG. 2, selectors 100R, 100G, 100B, 101R, 101G, and 101B respectively have a configuration of two inputs and two outputs, and can switch a correspondence between an input and an output according to a controlling device not shown.
RAM_R1, RAM_R2, RAM_G1, RAM_G2, RAM_B1, and RAM_B2 are memories respectively having a storage capacity which can store a lookup table for one color, which is configured by gradation level data after being corrected for each of RGB colors. Here, each gradation level data is assumed to be 256 gradation levels (8 bits), and a memory configured by 8 bits×256 words is used as these memories.
Operations of the color adjusting unit shown in FIG. 2 are described. These operations are similar for the respective R (red), G (green), and B (blue) colors. Therefore, only the operations for R color are described here.
Gradation level data (video input R) input to this color adjusting unit passes through the selector 100R, and is fed to the RAM_R1 as an address. Then, gradation level data to which the input gradation level data is corrected is read from the RAM_R1. The gradation level data after being corrected passes trough the selector 101R, and is output as a video output R.
While the above described color adjustment is being made, an address (BUS address) output from the controlling device not shown passes through the selector 100R, and is fed to the RAM-R2. At the same time, data (BUS write data) output from the controlling device is written to the storage area corresponding to the address in the RAM_R2. Accordingly, the controlling device sequentially feeds the gradation level data before and after being corrected to the RAM_R2 respectively in correspondence with the address and the write data, whereby a lookup table for correcting the gradation level data is newly written to the RAM_R2.
At this time, data read from the RAM_R2 passes through the selector 101R and is transmitted to the controlling device. The controlling device can check the data write to the RAM_R2 by reading this data (BUS read data).
When a change in the correction amount of gradation level data is made, the controlling device simultaneously switches the selectors 100R and 101R. As a result, the gradation level data (video input R) input to the color adjusting unit passes through the selector 100R, and is fed to the RAM_R2 as an address. Then, gradation level data to which the input gradation level data is corrected is read from the RAM_R2. The gradation level data after being corrected passes through the selector 101R, and is output as the video output R. Accordingly, if different lookup tables are stored in the RAM_R1 and the RAM_R2, the gradation level data after being corrected becomes different before and after this switching. Moreover, the video output R is not aborted at the time of this switching.
While the above described color adjustment is being made, the address (BUS address) output from the controlling device passes through the selector 100R and is fed to the RAM_R1 at this time. At the same time, data (BUS write data) output from the controlling device is written to the storage area corresponding to the address in the RAM_R1. Accordingly, the lookup table stored in the RAM_R1 can be rewritten at this time.
As described above, 2 storage areas for lookup tables are prepared in the color adjusting unit shown in FIG. 2 for each color. Accordingly, a lookup table stored in one area can be rewritten while a lookup table stored in the other area is being used to correct gradation level data. Therefore, the contents of the lookup table can be changed without aborting a video signal output, whereby the correction amount of gradation level data can be changed without aborting an image display.
However, a large memory capacity is required to adopt, as the color adjusting unit, the configuration shown in FIG. 2, namely, the configuration where 2 storage areas for lookup tables are prepared for each of the colors.
In the example shown in FIG. 2, the memory capacity required to store the lookup tables in 2 areas for respective RGB colors is 8 bits×256 words×3 colors×2 areas=12288 bits. For example, if the color adjusting unit is configured as an integrated circuit, a wide chip space is required to build a memory of such a large capacity.
A technique for using a dual-port memory to/from which data can be written/read in parallel, and for securing 2 storage areas for lookup tables for each color is considered to reduce the memory capacity of the color adjusting unit. However, since the chip space of the dual-port memory is far beyond double of 1-port memory, the chip space required when the color adjusting unit is mounted in an integrated circuit increases on the contrary.